export interface ITVWallItem {
	tvWallTemplateId: string
	name: string
}

export interface BoxInfoProps {
	parent_box_width: number
	box_x: number
	box_y: number
	box_width: number
	box_height: number
	hdu_id: string
	hdu_alias: string //设备名称
	channel_id: string //通道号
}

export type ChangeProps = Partial<BoxInfoProps>

export interface ChangeParamsProps {
	boxIndex: number
	configObj: ChangeProps
}

export type IAction = ReducerMaker<{
	update: TVWallConfigProps
	changeEditState: boolean
	changeApplyState: boolean
	changeTVWallName: string
	changeColumnNum: number
	changeLineNum: number
	deleteTVwall: number
	changeBoxList: BoxInfoProps[]
	changeBoxListParams: ChangeParamsProps
}>

export interface TVWallConfigListItem {
	tvWall_template_id: string
	company_moid: string
	creator: string
	in_use: 0 | 1
	layout_x: number
	layout_y: number
	name: string
	box_details: BoxInfoProps[]
}

export interface TVWallConfigProps {
	/** 编辑时是否已应用电视墙风格 */
	isApply: boolean
	tvWallTemplateId: string
	name: string
	lineNum: number
	columnNum: number
	boxList: BoxInfoProps[]
}

export interface ChannelData {
	id: string
	alias: string
	channelNum: string[]
}
